* Replication code for Aarøe, Petersen and Arceneaux (2017) US Sample 4 *

* This do file reproduces analyses related to the US Sample 4
* Use the following replication data set: "Replication Data Set US Sample 4"
** See the Online Appendix for details on question wording and survey flow

set more off

******************************************************************************************************
* recodings and reliability code reported here
******************************************************************************************************

******************************************************************************************************
*recodings and reliability codes for Test 1
******************************************************************************************************

*Creating scales for contamination disgust, core disgust and animal reminder disgust

* recoding of items for the contamination disgust, core disgust and animal reminder disgust scales
** Note: items 1, 6, and 10 must be reversed; run the code below ONLY ONCE.
gen monkey01 = 6 - ds1_1
gen roach06 = 6 - ds1_6
gen eye10 = 6 - ds1_10
recode ds1_2 (5=5) (1=1) (2=2) (3=3) (4=4), gen(hand02)
recode ds1_3 (5=5) (1=1) (2=2) (3=3) (4=4), gen(throat03)
recode ds1_4 (5=5) (1=1) (2=2) (3=3) (4=4), gen(toilet04)
recode ds1_5 (5=5) (1=1) (2=2) (3=3) (4=4), gen(grave05)
recode ds1_7 (5=5) (1=1) (2=2) (3=3) (4=4), gen(body07)
recode ds1_8 (5=5) (1=1) (2=2) (3=3) (4=4), gen(vomit08)
recode ds1_9 (5=5) (1=1) (2=2) (3=3) (4=4), gen(cook09)
recode ds1_11 (5=5) (1=1) (2=2) (3=3) (4=4), gen(rat11)
recode ds1_13 (5=5) (1=1) (2=2) (3=3) (4=4), gen(soup13) 
recode ds1_14 (5=5) (1=1) (2=2) (3=3) (4=4), gen(hotel14)
recode ds2_1 (5=5) (1=1) (2=2) (3=3) (4=4), gen(maggots15)
recode ds2_3 (5=5) (1=1) (2=2) (3=3) (4=4), gen(urine17)
recode ds2_4 (5=5) (1=1) (2=2) (3=3) (4=4), gen(soda18)
recode ds2_5 (5=5) (1=1) (2=2) (3=3) (4=4), gen(cat19)
recode ds2_6 (5=5) (1=1) (2=2) (3=3) (4=4), gen(icecrm20)
recode ds2_7 (5=5) (1=1) (2=2) (3=3) (4=4), gen(intest21)
recode ds2_8 (5=5) (1=1) (2=2) (3=3) (4=4), gen(underw22)
recode ds2_9 (5=5) (1=1) (2=2) (3=3) (4=4), gen(chocl23)
recode ds2_10 (5=5) (1=1) (2=2) (3=3) (4=4), gen(ashes24)
recode ds2_11 (5=5) (1=1) (2=2) (3=3) (4=4), gen(milk25)
recode ds2_12 (5=5) (1=1) (2=2) (3=3) (4=4), gen(condom26)
recode ds2_13 (5=5) (1=1) (2=2) (3=3) (4=4), gen(worm27)

* creation of the core disgust scale 
egen core_av = rowmean(monkey01 throat03 roach06 vomit08 rat11 soup13 maggots15 urine17 icecrm20 underw22 milk25 worm27)

* creation of the animal reminder disgust scale
egen anrem_av = rowmean(hand02 grave05  body07 eye10 hotel14 cat19 intest21 ashes24)

* creation of the contamination disgust scale
egen contam_av = rowmean(toilet04 cook09 soda18 chocl23 condom26)

* Creation of a contamination disgust scale without the item referencing sexual behavior (for Online Appendix A5.2)
egen contam_nosexual =rmean(toilet04 cook09 soda18 chocl23)
gen contam_nosexual01=(contam_nosexual-1)/4

* creation of the full DS-R scale
egen dsr_av = rowmean(monkey01 hand02 throat03 toilet04 grave05 roach06 body07 vomit08 cook09 eye10 rat11 soup13 hotel14 maggots15 urine17 soda18 cat19 icecrm20 intest21 underw22 chocl23 ashes24 milk25 condom26 worm27)

* recoding the core disgust, animal reminder disgust, contamination disgust and the DS-R scales to range form 0 to 1
gen core_av01=(core_av-1)/4
gen anrem_av01=(anrem_av-1)/4
gen contam_av01 =(contam_av-1)/4
gen dsr_av01=(dsr_av-1)/4

*Crohnbachs' alpha reliability coefficient for the core disgust scale (reported in Online Appendix A5.1)
alpha monkey01 throat03 roach06 vomit08 rat11 soup13 maggots15 urine17 icecrm20 underw22 milk25 worm27

* Crohnbachs' alpha reliability coefficient for the animal reminder disgust scale (reported in Online Appendix A5.1)
alpha hand02 grave05  body07 eye10 hotel14 cat19 intest21 ashes24

* Crohnbachs' alpha reliability coefficient for the contamination disgust scale (reported in the main text in "Materials and methods" in Test 1 and in Online Appendix A4.1.2)
alpha toilet04 cook09 soda18 chocl23 condom26

* mean and standard deviation of the contamination disgust scale (reported in Online Appendix A4.1.2)
sum contam_av01

* Crohnbachs' alpha reliability coefficient for the DSR-R scale (reported in Online Appendix A5.1
alpha monkey01 hand02 throat03 toilet04 grave05 roach06 body07 vomit08 cook09 eye10 rat11 soup13 hotel14 maggots15 urine17 soda18 cat19 icecrm20 intest21 underw22 chocl23 ashes24 milk25 condom26 worm27


* Creation of the germ aversion factor (ranging from 0 to 1)
recode pvds_8-pvds_15 (19=1) (20=2) (21=3) (22=4) (23=5) (24=6) (25=7)

recode pvds_12 pvds_14 pvds_15 (1=7) (2=6) (3=5) (4=4) (5=3) (6=2) (7=1), gen(pvds_12_rq pvds_14_rq pvds_15_rq)

egen GermAversion=rowmean(pvds_8 pvds_9 pvds_10 pvds_11 pvds_13 pvds_12_rq pvds_14_rq pvds_15_rq)
gen GermAversion01=(GermAversion-1)/6

* mean and standard deviation of the germ aversion factor (reported in Online Appendix A4.1.2)
sum GermAversion01

* Crohnbachs' alpha reliability coefficient for the germ aversion factor (reported in Online Appendix A4.1.2)
alpha pvds_8 pvds_9 pvds_10 pvds_11 pvds_13 pvds_12_rq pvds_14_rq pvds_15_rq

* Creation of the Pathogen Disgust Scale (ranging from 0 to 1)
egen PathogenDisgust=rowmean(pathogen_1-pathogen_7)
gen PathogenDisgust01=(PathogenDisgust-1)/6

* mean and standard deviation of the Pathogen Disgust Scale (reported in Online Appendix A4.1.2)
sum PathogenDisgust01

* Crohnbachs' alpha reliability coefficient for the pathogen disgust scale (reported in Online Appendix A4.1.2)
alpha pathogen_1-pathogen_7

* Creation of the scale measuring opposition toward immigration (ranging from 0 to 1)
tempvar i1 i3 i5
gen `i1'=8-immig1_1
gen `i3'=8-immig1_3
gen `i5'=8-immig1_5

egen OpposeImmig=rowmean(`i1' `i3' `i5' immig1_2 immig1_4 immig1_6)
gen OpposeImmig01=(OpposeImmig-1)/6

* mean and standard deviation of the scale measuring opposition toward immigration (reported in Online Appendix A4.2)
sum OpposeImmig01

*Crohnbachs' alpha reliability coefficient for the scale measuring opposition toward immigration (reported in the main text in "Materials and methods" in Test 1 and in Online Appendix A4.2)
alpha immig1_1-immig1_6

* ideology ranging from 0 to 1, higher values more conservative
gen conservative=ideology
gen conservative01=(conservative-1)/4

* mean and standard deviation of the ideology measure (reported in Online Appendix A4.2)
sum conservative01

* ideology coded in three categories (for Table A9 in Online Appendix A5.4)
ta ideology
gen ideo3=ideology
recode ideo3 (1=1) (2=1) (3=2) (4=3) (5=3)
label define ideo3 1 "Liberals" 2 "Middle of the road" 3 "Conservatives"
label values ideo3 ideo3

* Age 
gen age=2013-(1911+dob)

* Gender (1 = female)
gen female=0
replace female=1 if sex==2

* Income ranging from 0 to 1
gen income01=(income-1)/9

* Education ranging from 0 to 1
gen edu5=education
recode edu5 (1=1) (2=2) (3=3) (4=3) (5=4) (6=5)
gen education01=(edu5-1)/4
ta income01
ta education01

* Big Five personality traits ranging from 0 to 1
recode tipi_1-tipi_10 (1=0) (2=1) (3=2) (4=3) (5=4) (6=5) (7=6) (8=7) (9=8) (10=9) (11=10)

* Openness, higher values more open
gen openness=((10-tipi_1)+(10-tipi_2))/2
gen openness01 = openness/10

* Conscientiousness, higher values more conscientious
gen conscientious=((10-tipi_3)+(10-tipi_4))/2
gen conscientious01 = conscientious/10

* Extraversion, higher values more extraverted
gen extroversion=((10-tipi_5)+(10-tipi_6))/2
gen extroversion01 = extroversion/10

* Agreeableness, higher values more agreeable
gen agreeableness=((10-tipi_7)+(10-tipi_8))/2
gen agreeableness01 = agreeableness/10

* Emotional stability, higher values more emotionally stable (less neurotic) 
gen stability=((10-tipi_9)+(10-tipi_10))/2
gen stability01 = stability/10

* mean and stadard deviation of the Big five traits (reported in Online Appendix A4.2)
sum openness01
sum conscientious01
sum extroversion01
sum agreeableness01
sum stability01


* State
gen stateno=99
replace stateno= 1 if state=="AL"
replace stateno= 2 if state=="AK" 
replace stateno= 4 if state=="AZ" 
replace stateno= 5 if state=="AR" 
replace stateno= 6 if state=="CA" 
replace stateno= 8 if state=="CO" 
replace stateno= 9 if state=="CT" 
replace stateno= 10 if state=="DE" 
replace stateno= 11 if state=="DC" 
replace stateno= 12 if state=="FL" 
replace stateno= 13 if state=="GA" 
replace stateno= 15 if state=="HI" 
replace stateno= 16 if state=="ID" 
replace stateno= 17 if state=="IL" 
replace stateno= 18 if state=="IN" 
replace stateno= 19 if state=="IA" 
replace stateno= 20 if state=="KS" 
replace stateno= 21 if state=="KY" 
replace stateno= 22 if state=="LA" 
replace stateno= 23 if state=="ME" 
replace stateno= 24 if state=="MD" 
replace stateno= 25 if state=="MA" 
replace stateno= 26 if state=="MI" 
replace stateno= 27 if state=="MN" 
replace stateno= 28 if state=="MS" 
replace stateno= 29 if state=="MO" 
replace stateno= 30 if state=="MT" 
replace stateno= 31 if state=="NE" 
replace stateno= 32 if state=="NV" 
replace stateno= 33 if state=="NH" 
replace stateno= 34 if state=="NJ" 
replace stateno= 35 if state=="NM" 
replace stateno= 36 if state=="NY" 
replace stateno= 37 if state=="NC" 
replace stateno= 38 if state=="ND" 
replace stateno= 39 if state=="OH" 
replace stateno= 40 if state=="OK" 
replace stateno= 41 if state=="OR" 
replace stateno= 42 if state=="PA" 
replace stateno= 44 if state=="RI" 
replace stateno= 45 if state=="SC" 
replace stateno= 46 if state=="SD" 
replace stateno= 47 if state=="TN" 
replace stateno= 48 if state=="TX" 
replace stateno= 49 if state=="UT" 
replace stateno= 50 if state=="VT" 
replace stateno= 51 if state=="VA" 
replace stateno= 53 if state=="WA" 
replace stateno= 54 if state=="WV" 
replace stateno= 55 if state=="WI" 
replace stateno= 56 if state=="WY" 

mvdecode stateno, mv(99)


***********************************************************************
* Additional recodings for Test 2
***********************************************************************

* Creation of the composite measure of behavioral immune sensitivity
egen CompositeScale=rmean(GermAversion01 PathogenDisgust01 contam_av01)

* Crohnbachs' alpha reliability coefficient for the composite measure of behavioral immune sensitivity (reported in Online Appendix A6 and in the main text in the section "Measures" in Test 2)
alpha GermAversion01 PathogenDisgust01 contam_av01

* Correlations between the three scales included in the composite measure (reported in Online Appendix A6)
cor GermAversion01 PathogenDisgust01 contam_av01

*Treatment assignment in the disease protection experiment
tab dobrfl_213, gen(t)
rename t1 DisgustStory
label define DisgustStory 0 "disease threat" 1 "disease protection"
label values DisgustStory DisgustStory

*Treatment assignment in the disease protection experiment (this variable changes the reference category and is used in the supplemental analyses presented in text in Online Appendix A8.4 (see below)
rename t2 ReliefStory
label define ReliefStory 0 "disease protection" 1 "disease threat"
label values ReliefStory ReliefStory

* Manipulation checks 
** Feelings of cleanliness
rename mcheck_3 feltclean
rename mcheck_5 feltrelief
rename mcheck_7 cleanhands

egen cleanhandsindex=rmean(feltclean feltrelief cleanhands)
gen cleanhandsindex01=(cleanhandsindex-1)/6
ta cleanhandsindex01

* Crohnbachs' alpha reliability coefficient for the feelings of cleanliness index used as manipulation check in Test 2 (reported on Online Appendix A7)
alpha feltclean feltrelief cleanhands

** Feelings of disease threat
rename mcheck_6 sawvomit
rename mcheck_4 feltdisgusted


egen diseasethreat=rmean(feltdisgusted sawvomit)
gen diseasethreat01=(diseasethreat-1)/6
ta diseasethreat01

* correlation between the two items in the feelings of disease threat index (reported in online Appendix A7)
cor feltdisgusted sawvomit 

* Creation of scales measuring anxeity and enthusiasm
* Factor analysis - investigating whether the emotional reactions form a two dimensional structure (result summarized in text in Online Appendix A8.4)
factor affect_1 affect_2 affect_3 affect_4 affect_5 affect_6 affect_7 affect_8 affect_9 affect_10, pcf
rotate

* Creation of the anxiety scale (ranging from 0 to 1)
egen anxiety=rmean(affect_1 affect_2 affect_7 affect_8)
gen anxiety01=anxiety/100

* Crohnbachs' alpha reliability coefficient for the anxiety scale (reported in Online Appendix A8.4)
alpha affect_1 affect_2 affect_7 affect_8

* Creation of the enthusiasm scale (ranging from 0 to 1)
egen enthusiasm=rmean(affect_3 affect_4 affect_5 affect_6 affect_9 affect_10)
gen enthusiasm01=enthusiasm/100

* Crohnbachs' alpha reliability coefficient for the enthusiasm scale (reported in Online Appendix A8.4)
alpha affect_3 affect_4 affect_5 affect_6 affect_9 affect_10


******************************************************************************************************
* Sample characteristics (reported in the Online Appendix A3.3)
******************************************************************************************************

ta female
sum conservative01
sum age

* on the variable "income" the category "2" includes respondents who reported a family income of $15,000-$24,999
ta income


************************************************************************
* Analyses
************************************************************************

***********************************************************
*Results for Test 1
***********************************************************

* Results reported in the main text

*Test 1, Table 2, Models 4-6 in main text
eststo: reg OpposeImmig01 contam_av01 female age education01 conservative01 income01 stability01 openness01 conscientious01 extroversion01 agreeableness01 if white==1
eststo: reg OpposeImmig01 PathogenDisgust01 female age education01 conservative01  income01 stability01 openness01 conscientious01 extroversion01 agreeableness01 if white==1
eststo: reg OpposeImmig01 GermAversion01 female age education01 conservative01 income01 stability01 openness01 conscientious01 extroversion01 agreeableness01 if white==1
esttab, b(%5.2f) se(%5.2f), using part_2.rtf, replace onecell star(* 0.10 ** 0.02 *** 0.002) wide constant ar2
eststo clear

* Test 1 - footnote 6, main text and Online Appendix A5.4, Table A8, Models 4-6 - interactions between behavioral immune sensitivity and ideology
eststo:reg OpposeImmig01 c.contam_av01##c.conservative01 female age education01 income01 stability01 openness01 conscientious01 extroversion01 agreeableness01 if white==1, robust
eststo:reg OpposeImmig01 c.PathogenDisgust01##c.conservative01 female age education01 income01 stability01 openness01 conscientious01 extroversion01 agreeableness01 if white==1, robust
eststo:reg OpposeImmig01 c.GermAversion01##c.conservative01 female age education01  income01 stability01 openness01 conscientious01 extroversion01 agreeableness01 if white==1, robust
esttab, b(%5.2f) se(%5.2f), using part_2.rtf, replace onecell star(* 0.10 ** 0.02 *** 0.002) wide constant ar2
eststo clear

* Results reported in the Online Appendix

* Test 1 - Online Appendix A4.1, Table A3, columns 1,2-3 - bivariate correlations between measures of behavioral immune sensitivity and demographics (two-sided tests)
pwcorr contam_av01 PathogenDisgust01 GermAversion01 female age education01 income01, sig obs

* Test 1 - Online Appendix A5.1, Table A5, Models 7-8, - correlation between contamination disgust and antiimmigration attitudes controling for other types of disgust
reg OpposeImmig01 contam_av01 dsr_av, beta
reg OpposeImmig01 contam_av01 core_av01 anrem_av01, beta

* Results reported in the Online Appendix A5.2 Supplemental analysis of robustness of the effect of contamination disgust in Table 2 in the main text excluding the item referencing sexual behavior
reg OpposeImmig01 contam_nosexual01 female age education01 conservative01 income01 stability01 openness01 conscientious01 extroversion01 agreeableness01 

* Test 1 - Online Appendix A5.4, Table A7, Models 4-6 - zero-order correlation with ideology
pwcorr conservative01 contam_av01 PathogenDisgust01 GermAversion01, sig obs

* Test 1 - Online Appendix A5.4, Table A9, fourth row - mean and standard deviation in behavioral immune sensitivity by ideology (3 categories)
bys ideo3: sum contam_av01 PathogenDisgust01 GermAversion01
reg contam_av01 i.ideo3
reg PathogenDisgust01 i.ideo3
reg GermAversion01 i.ideo3

***********************************************************
*Results for Test 2
***********************************************************

* Results reported in the main text

xtset stateno 
eststo: xtreg OpposeImmig01 ReliefStory, fe 

* Test 2, Table 3 - The mitigating effect of infection protection cues
xtset stateno 
eststo: xtreg OpposeImmig01 ReliefStory##c.CompositeScale female age conservative01 education01 income01, fe robust
esttab, b(%5.2f) se(%5.2f), using part_2.rtf, replace onecell star(* 0.10 ** 0.02 *** 0.002) wide constant ar2
eststo clear

* Test 2, Footnote 7 and Online Appendix A8.2 
* predicted effect of protection cues when behavioral immune sensitivity is at the first interquartile median
xtset stateno 
eststo: xtreg OpposeImmig01 ReliefStory##c.CompositeScale female age conservative01 education01 income01, fe robust
gen used = e(sample)
sum CompositeScale if used ==1, detail
drop used
eststo: xtreg OpposeImmig01 ReliefStory##c.CompositeScale female age conservative01 education01 income01, fe robust
margins, dydx(ReliefStory) at(CompositeScale=(0.385))
eststo: xtreg OpposeImmig01 ReliefStory##c.contam_av01 female age conservative01 education01 income01, fe robust
gen used = e(sample)
sum contam_av01 if used ==1, detail
drop used
eststo: xtreg OpposeImmig01 ReliefStory##c.contam_av01 female age conservative01 education01 income01, fe robust
margins, dydx(ReliefStory) at(contam_av01=(0.20))
eststo: xtreg OpposeImmig01 ReliefStory##c.PathogenDisgust01 female age conservative01 education01 income01, fe robust
gen used = e(sample)
sum PathogenDisgust01  if used ==1, detail
drop used
eststo: xtreg OpposeImmig01 ReliefStory##c.PathogenDisgust01 female age conservative01 education01 income01, fe robust
margins, dydx(ReliefStory) at(PathogenDisgust01=(0.50))
eststo: xtreg OpposeImmig01 ReliefStory##c.GermAversion01 female age conservative01 education01 income01, fe robust
gen used = e(sample)
sum GermAversion01  if used ==1, detail
drop used
eststo: xtreg OpposeImmig01 ReliefStory##c.GermAversion01 female age conservative01 education01 income01, fe robust
margins, dydx(ReliefStory) at(GermAversion01=(0.354))
eststo clear

* Test 2, Footnote 7 and Online Appendix A8.2 
* predicted effect of protection cues when behavioral immune sensitivity is at the 10th percentile
xtset stateno 
eststo: xtreg OpposeImmig01 ReliefStory##c.CompositeScale female age conservative01 education01 income01, fe robust
gen used = e(sample)
sum CompositeScale if used ==1, detail
drop used
eststo: xtreg OpposeImmig01 ReliefStory##c.CompositeScale female age conservative01 education01 income01, fe robust
margins, dydx(ReliefStory) at(CompositeScale=(0.298))
eststo: xtreg OpposeImmig01 ReliefStory##c.contam_av01 female age conservative01 education01 income01, fe robust
gen used = e(sample)
sum contam_av01 if used ==1, detail
drop used
eststo: xtreg OpposeImmig01 ReliefStory##c.contam_av01 female age conservative01 education01 income01, fe robust
margins, dydx(ReliefStory) at(contam_av01=(0.15))
eststo: xtreg OpposeImmig01 ReliefStory##c.PathogenDisgust01 female age conservative01 education01 income01, fe robust
gen used = e(sample)
sum PathogenDisgust01  if used ==1, detail
drop used
eststo: xtreg OpposeImmig01 ReliefStory##c.PathogenDisgust01 female age conservative01 education01 income01, fe robust
margins, dydx(ReliefStory) at(PathogenDisgust01=(0.381))
eststo: xtreg OpposeImmig01 ReliefStory##c.GermAversion01 female age conservative01 education01 income01, fe robust
gen used = e(sample)
sum GermAversion01  if used ==1, detail
drop used
eststo: xtreg OpposeImmig01 ReliefStory##c.GermAversion01 female age conservative01 education01 income01, fe robust
margins, dydx(ReliefStory) at(GermAversion01=(0.271))


* Results reported in the Online Appendix

* Test 2, Online Apendix A7, Table A10 manipulation check disease protection experiment (using the "DisgustStory" variable which has the reverse coding of "ReliefStory" variable
ttest diseasethreat01, by(DisgustStory)
ttest cleanhandsindex01, by(DisgustStory)

* Extra: Test 2, Online Apendix A7, manipulation check disease protection experiment (same substantial result as in the previous two command lines but the sign changes because the "DisgustStory" variable which has the reverse coding of "ReliefStory" variable
ttest diseasethreat01, by(ReliefStory)
ttest cleanhandsindex01, by(ReliefStory)

* Test 2, Online Appendix A8.1, Table A11 - The mitigating effect of infection protection cues
xtset stateno 
eststo: xtreg OpposeImmig01 ReliefStory##c.contam_av01 female age conservative01 education01 income01, fe robust
eststo: xtreg OpposeImmig01 ReliefStory##c.PathogenDisgust01 female age conservative01 education01 income01, fe robust
eststo: xtreg OpposeImmig01 ReliefStory##c.GermAversion01 female age conservative01 education01 income01, fe robust
esttab, b(%5.2f) se(%5.2f), using part_2.rtf, replace onecell star(* 0.10 ** 0.02 *** 0.002) wide constant ar2
eststo clear

*Online Appendix A8.3, Table A13 - the effect of income and education on opposition to the entering immigrant not moderated by disease protection cues 
xtset stateno 
eststo:xtreg OpposeImmig01 ReliefStory##c.income01 c.CompositeScale  female age conservative01 education01, fe robust 
eststo:xtreg OpposeImmig01 ReliefStory##c.income01 c.contam_av01 female age conservative01 education01, fe robust
eststo:xtreg OpposeImmig01 ReliefStory##c.income01 c.PathogenDisgust01  female age conservative01 education01, fe robust
eststo:xtreg OpposeImmig01 ReliefStory##c.income01 c.GermAversion01  female age conservative01 education01, fe robust
eststo:xtreg OpposeImmig01 ReliefStory##c.education01 c.CompositeScale  female age conservative01  c.income01  , fe robust 
eststo:xtreg OpposeImmig01 ReliefStory##c.education01 c.contam_av01 female age conservative01  c.income01 , fe robust
eststo:xtreg OpposeImmig01 ReliefStory##c.education01 c.PathogenDisgust01  female age conservative01  c.income01  , fe robust
eststo:xtreg OpposeImmig01 ReliefStory##c.education01 c.GermAversion01  female age conservative01  c.income01  , fe robust
esttab, b(%5.2f) se(%5.2f), using part_2.rtf, replace onecell star(* 0.10 ** 0.02 *** 0.002) wide constant ar2
eststo clear

* Test 2, Online Appendix A8.4 - bivariate correlation between anxiety and opposition to the entering immigrant
pwcorr OpposeImmig01 anxiety01, sig obs

* Test 2, Online Appendix A8.4, Table A14 - The mitigating effect of infection protection cues on the impact of behavioral immune sensitivity and anxiety
xtset stateno 
eststo: xtreg OpposeImmig01 ReliefStory##c.CompositeScale ReliefStory##c.anxiety01 female age conservative01 education01 income01, fe robust
eststo: xtreg OpposeImmig01 ReliefStory##c.contam_av01 ReliefStory##c.anxiety01 female age conservative01 education01 income01, fe robust
eststo: xtreg OpposeImmig01 ReliefStory##c.PathogenDisgust01 ReliefStory##c.anxiety01 female age conservative01 education01 income01, fe robust
eststo: xtreg OpposeImmig01 ReliefStory##c.GermAversion01 ReliefStory##c.anxiety01 female age conservative01 education01 income01, fe robust
esttab, b(%5.2f) se(%5.2f), using part_2.rtf, replace onecell star(* 0.10 ** 0.02 *** 0.002) wide constant ar2
eststo clear

* Test 2, Online Appendix A8.4 - Supplemental analyses described in text p. 55 before Table A14
** In the disease protection condition, the effect of anxiety on opposition to immigration is statistically significant in all four models  
xtset stateno 
eststo: xtreg OpposeImmig01 DisgustStory##c.CompositeScale DisgustStory##c.anxiety01 female age conservative01 education01 income01, fe robust
eststo: xtreg OpposeImmig01 DisgustStory##c.contam_av01 DisgustStory##c.anxiety01 female age conservative01 education01 income01, fe robust
eststo: xtreg OpposeImmig01 DisgustStory##c.PathogenDisgust01 DisgustStory##c.anxiety01 female age conservative01 education01 income01, fe robust
eststo: xtreg OpposeImmig01 DisgustStory##c.GermAversion01 DisgustStory##c.anxiety01 female age conservative01 education01 income01, fe robust
esttab, b(%5.2f) se(%5.2f), using part_2.rtf, replace onecell star(* 0.10 ** 0.02 *** 0.002) wide constant ar2
eststo clear




